import numpy as np
import matplotlib.pyplot as plt
#支持中文
plt.rcParams['font.family'] = ['sans-serif']
plt.rcParams['font.sans-serif'] = ['SimHei']
# 支持负数
plt.rcParams['axes.unicode_minus'] = False
# 数据准备
x = [1, 2, 3, 4, 5]
y = [2, 3, 5, 7, 11]
categories = ['苹果', '香蕉', '橙子', '葡萄']
sales_2022 = [45, 30, 25, 40]
sizes = [15, 30, 45, 10]
labels = ['A', 'B', 'C', 'D']
# 创建2行2列的子图布局
fig, axs = plt.subplots(2, 2, figsize=(10, 8))
# 在每个子图中绘制不同的图形
axs[0, 0].plot(x, y, 'r')  # 第一行第一列
axs[0, 0].set_title('折线图')
axs[0, 1].scatter(x, y)   # 第一行第二列
axs[0, 1].set_title('散点图')
axs[1, 0].bar(categories, sales_2022)
axs[1, 0].set_title('柱状图')
axs[1, 1].pie(sizes, labels=labels)
axs[1, 1].set_title('饼图')
plt.tight_layout()  # 自动调整子图间距
plt.show()
